// fs - file system 文件系统
const fs = require("fs");
const path = require("path");
const https = require("https");

// 创建文件
// 文件的读写都是异步的
// fs.writeFile(path.join(__dirname, "./a.txt"), "hello world", (err) => {
//   if (err) throw err;
//   console.log("文件创建成功");
// });

// 每一个fs的方法，但会有一个对应的同步方法
// try {
//   fs.writeFileSync(path.join(__dirname, "./b.txt"), "hello world2");
// } catch (err) {
//   console.log("报错了");
// }

// try {
//   console.log(a);
// } catch (err) {
//   // console.log("a不存在");
//   throw err;
// }

// 修改文件,追加内容
// fs.appendFile(path.join(__dirname, "./b.txt"), "\n123", (err) => {
//   if (err) throw err;
//   console.log("文件修改成功");
// });

// 读取文件
// fs.readFile(path.join(__dirname, "./b.txt"), "utf-8", (err, data) => {
//   if (err) throw err;
//   console.log(data);
// });

// 删除文件
// fs.unlink(path.join(__dirname, "./a.txt"), (err) => {
//   if (err) throw err;
//   console.log("文件删除成功");
// });

// 创建文件夹
// fs.mkdir(path.join(__dirname, "./fs"), (err) => {
//   if (err) throw err;
//   console.log("fs文件夹创建成功");
// });

// for (let i = 1; i <= 10; i++) {
//   fs.writeFile(
//     path.join(__dirname, `./fs/${i}.txt`),
//     "hello world" + i,
//     (err) => {
//       if (err) throw err;
//       console.log("文件" + i + "创建成功");
//     }
//   );
// }

// 删除文件夹
// fs.rmdir("./fs", (err) => {
//   if (err) throw err;
//   console.log("fs删除成功");
// });

// 复制文件
// fs.copyFile("./b.txt", "./fs/c.txt", (err) => {
//   if (err) throw err;
//   console.log("文件复制成功");
// });

https.get("https://www.jd.com/", (res) => {
  let result = "";
  // 监听数据的改变
  // 能得到的数据量是有限的
  res.on("data", (chunk) => {
    // console.log(data.toString());
    // console.log(data + "");
    result += chunk;
  });
  // 表示所有的数据都请求得到了
  res.on("end", () => {
    fs.writeFile(path.join(__dirname, "./jd.html"), result, (err) => {
      if (err) throw err;
      console.log("京东创建成功");
    });
  });
});
